This disclosure relates to the field of communications supporting guaranteed data delivery on unreliable (i.e. best effort) networks. More specifically, the present invention relates to providing application independent, decoupled point-to-multipoint (PMP) connections for providing guaranteed data delivery service.
Multicasting is a network feature such that a packet from a single source can be delivered to multiple destinations. Typically, delivery is not guaranteed by the network although protocols exist to provide reliability.
Content distribution is an application level feature and greatly benefits with the availability of the network multicasting. However, multicasting by itself is not sufficient to meet the requirements of the content distribution in enterprise environment. Multicasting requires all destinations to be available and listening at the time of transmission. If a destination joins a multicast session late then it receives only partial data from the time it joined the session. In case of site failures or unavailability, the origin may be required to retransmit the data multiple times to deliver data to all sites. Furthermore, in the case of multicast content distribution, the data will be sent from the origin to the network at the speed of the lowest link among all destinations even if the origin and other sites may be connected to the network by high bandwidth links. Multicasting requires all destinations to join the multicast session at the time of data distribution. In most enterprise environments this requirement is difficult to meet due to several reasons. One main reason is that most of the enterprises that build their private networks are MNCs with large number of sites (few hundreds to few thousands) distributed across several countries. Thus, difference in time zones within U.S. and across other countries makes it difficult for all sites to join the multicast session at the same time. Other reasons are different work schedules or shifts, sites being unavailable or down, and/or other scheduling conflicts. In the case of multicasting, the data from the data centers can be sent only at the lowest speed amongst all destinations. In the WAN environment, typically, customers would like to be able to send or receive contents to or from the network at the speed of the link connecting the site to the network because data centers are usually connected to the network at higher speeds than remote locations.
In the WAN environment, an enterprise customer is most concerned about minimizing the delay by using caching, etc., and maximizing the utilization of the bandwidth. Clearly, to meet these requirements, several functionalities on top of multicasting are needed.